<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');
session_start();

class jx_reporteMigracion extends CI_Controller {

    private $establecimiento;

    public function __construct() {
        parent::__construct();
        $this->load->model('_clienteM');
        $this->establecimiento = $_SESSION["establecimiento"]["id_establecimiento"];
    }

    public function getReporteMigracion() {
        if (!empty($_POST)) {
            $this->escapar($_POST);
            // echo "hola";
            $reporte = $this->crearReporte($_POST['fecha']);
            echo "{$reporte}";
        }
    }

    private function crearReporte($fecha) {
        $this->formatoFechaBD($fecha);
        $result = $this->_clienteM->getReporteMigracion($this->establecimiento, $fecha);
        $str = "";
        //var_dump($result);
        $auxfecha = $fecha;
        $this->formatoFechaVista($auxfecha);
        foreach ($result as $data) {
            $this->formatoVista($data->fecha_nacimiento);
            $tipo = ($data->fecha_ingreso == $fecha) ? "E" : "S";
            if (($tipo == "E" && $data->checkin_realizado == 1) || (($tipo == "S" && $data->checkout_realizado == 1))) {
                $str.="<tr><td><small>{$data->codigo_migracion}</small></td>
            <td><small>{$data->ciudad}</small></td>
            <td><small>{$data->codigo}</small></td>
            <td><small>{$data->identificacion}</small></td>    
            <td><small>{$data->id_pais}</small></td>
            <td><small>{$data->primer_apellido}</small></td>
            <td><small>{$data->segundo_apellido}</small></td>
            <td><small>{$data->name}</small></td>
                <td><small>";
                $str.=$tipo;
                $this->formatoVista($data->fecha_ingreso);
                $str.="</small></td>
                    <td><small>{$auxfecha}</small></td>
            <td><small>{$this->setCountryValues('procedencia', $data->id_reserva, $data->id_cliente)}</small></td>
            <td><small>{$this->setCountryValues('destino', $data->id_reserva, $data->id_cliente)}</small></td>
            <td><small>{$data->fecha_nacimiento}</small></td>             
           </tr>";
            }
        }

        return $str;
    }

    private function formatoVista(&$fecha) {
        if ($fecha != null) {
            $fecha = explode("-", $fecha);
            $fecha = "$fecha[2]/$fecha[1]/$fecha[0]";
        }
    }

    public function setCountryValues($tipo, $reserva, $cliente) {
        $result = $this->_clienteM->movimiento($tipo, $reserva, $cliente);
        if ($result) {
            $result = $result[0];
            if ($tipo == 'procedencia') {
                return ($result->pais_procedencia == 169) ? $result->ciudad_procedencia : $result->pais_procedencia;
            } else if ($tipo == 'destino') {
                return ($result->pais_destino == 169) ? $result->ciudad_destino : $result->pais_destino;
            }
        } else {
            return '';
        }
    }

}
